package site.hanzhe.cnCalendar.pojo;

import lombok.Getter;
import lombok.Setter;

@Getter
@Setter
// @ToString
public class CnCalendar {

    /** 年份 */
    private Integer year;

    /** 月份 */
    private Integer month;

    /** 日期 */
    private Integer dayOfMonth;

    /** 星期 */
    private Integer dayOfWeek;

    /** 农历年（正月） */
    private String lunarYearCn;

    /** 农历年 */
    private Integer lunarYear;

    /** 农历月 */
    private Integer lunarMonth;

    /** 农历日 */
    private Integer lunarDay;

    /** 年干 */
    private String yearGan;

    /** 年支 */
    private String yearZhi;

    /** 月干 */
    private String monthGan;

    /** 月支 */
    private String monthZhi;

    /** 日干 */
    private String dayGan;

    /** 日支 */
    private String dayZhi;

    /** 是否为闰月（1为闰月） */
    private boolean leapMonth;

    /** 节气 */
    private String solarTerm;

    /** 生肖 */
    private String zodiac;

    @Override
    public String toString() {
        return String.format("【公历：%4d年%02d月%02d日】,【农历：%4d(%s)年%02d月%02d日】,【干支：%s%s年%s%s月%s%s日】星期%d，%s年 %s",
                year, month, dayOfMonth,
                lunarYear, lunarYearCn, lunarMonth, lunarDay,
                yearGan, yearZhi, monthGan, monthZhi, dayGan, dayZhi,
                dayOfWeek, zodiac, solarTerm
        );
    }

}
